﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Drawing;
using System.Data;
using System.Text;
using System.Linq;
using System.Windows.Forms;
using DevExpress.XtraEditors;
using DAL;
using BLL;

namespace QLTTTH
{
    public partial class UCLichthi : DevExpress.XtraEditors.XtraUserControl
    {
        public UCLichthi()
        {
            InitializeComponent();
        }

        private void UCLichthi_Load(object sender, EventArgs e)
        {
            LoadLichTHi();
            grvLichthi.OptionsSelection.MultiSelect = true;
        }
        private void LoadLichTHi()
        {
            var aResult = LichThiManager.LayDanhSachLichThi();
            if (aResult.Success)
                gridDanhsach.DataSource = aResult.Result;
            //grvDSChungChi.DataSource = aResult.Result;
        }

        private void btnTimkiem_LinkClicked(object sender, DevExpress.XtraNavBar.NavBarLinkEventArgs e)
        {
            grvLichthi.ShowFindPanel();
        }

        private void btnThem_LinkClicked(object sender, DevExpress.XtraNavBar.NavBarLinkEventArgs e)
        {
            frmThongTinLichThi frm = new frmThongTinLichThi();
            frm.sendData = new frmThongTinLichThi.SendData(Themlichthi);
            frm.ShowDialog();
        }
        private void Themlichthi(LichThi lichthi)
        {
            if (LichThiManager.Themlichthi(lichthi).Success)
            {
                LoadLichTHi();
            }
        }

        private void btnXemchitiet_LinkClicked(object sender, DevExpress.XtraNavBar.NavBarLinkEventArgs e)
        {
            frmThongTinLichThi frm = new frmThongTinLichThi();
            frm.FillControl(Laylichthi_GrvLichthi());
            frm.btnLuu.Enabled = false;
            frm.ShowDialog();
        }
        private LichThi Laylichthi_GrvLichthi()
        {
            var lt = new LichThi();
            lt.MaLichThi = int.Parse(grvLichthi.GetFocusedRowCellValue("MaLichThi").ToString());
            lt.MaKyThi = int.Parse(grvLichthi.GetFocusedRowCellValue("MaKyThi").ToString());
            lt.MaHV = int.Parse(grvLichthi.GetFocusedRowCellValue("MaHV").ToString());
            lt.MaPhong = int.Parse(grvLichthi.GetFocusedRowCellValue("MaPhong").ToString());
            lt.GioThi = grvLichthi.GetFocusedRowCellValue("GioThi").ToString();
            return lt;
        }

        private void btnXoa_LinkClicked(object sender, DevExpress.XtraNavBar.NavBarLinkEventArgs e)
        {
            if (XtraMessageBox.Show("Bạn chắc chắn xóa lịch thi này", "Thông báo", MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == DialogResult.Yes)
            {
                int maLichThi;

                for (int i = 0; i < grvLichthi.RowCount; i++)
                {
                    if (grvLichthi.IsRowSelected(i))
                    {
                        maLichThi = int.Parse(grvLichthi.GetRowCellDisplayText(i, "MaLichThi").ToString());
                        LichThiManager.XoaLichThi(maLichThi);
                    }
                }

                grvLichthi.DeleteSelectedRows();
            }
        }



        private void CapNhatLichThi(LichThi lichthi)
        {
            LichThiManager.CapNhatLichThi(lichthi);
            grvLichthi.SetFocusedRowCellValue("MaKyThi", lichthi.MaKyThi);
            grvLichthi.SetFocusedRowCellValue("MaPhong", lichthi.MaPhong);
            grvLichthi.SetFocusedRowCellValue("MaHV", lichthi.MaHV);
            grvLichthi.SetFocusedRowCellValue("GioThi", lichthi.GioThi);
        }
        private void btnCapnhat_LinkClicked(object sender, DevExpress.XtraNavBar.NavBarLinkEventArgs e)
        {
            frmThongTinLichThi frm = new frmThongTinLichThi();
            frm.FillControl(Laylichthi_GrvLichthi());
            frm.sendData = new frmThongTinLichThi.SendData(CapNhatLichThi);
            frm.ShowDialog();
        }
    }
}
